<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
  <#include "../costDetailBox.html" />
  <title>${message("report.title")}</title>
  <link href="../te.css" rel="stylesheet" type="text/css">
  <style type="text/css">
    <#include "../te.css"/>
  </style>
  <script type="text/javascript">
    <#include "report.js"/>
  </script>
</head>
<body>
<h1>${message("report.title")}</h1>

<div id="timestamp">
  ${message("report.timestamp", now)}
</div>

<div style="margin-top: 32px;">
  <div style="padding-bottom: 24px; font-weight: bold; font-size: 120%">Overall score:
         <span style="font-weight: normal">${overall}</span></div>
  <div style="float: left;">
    ${pieChart}
  </div>
  <div style="float: left;">
    ${overallChart}
  </div>
  <div class="overview">
    <#if total gt 0>
      <table class="overview_table">
        <tr>
          <th>Analyzed classes</th>
          <th class="value">${total}</th>
          <th class="percent">&nbsp;</th>
        </tr>
        <tr>
          <td> - Excellent</td>
          <td class="value">${excellentCount}</td>
          <td class="percent">${(excellentCount / total)?string.percent}</td>
        </tr>

        <tr>
          <td> - Good</td>
          <td class="value">${goodCount}</td>
          <td class="percent">${(goodCount / total)?string.percent}</td>
        </tr>
        <tr>
          <td> - Needs work</td>
          <td class="value">${needsWorkCount}</td>
          <td class="percent">${(needsWorkCount / total)?string.percent}</td>
        </tr>
      </table>
    <#else/>
      Total score is zero - were any classes analyzed??
    </#if>
  </div>

  <div style="clear:both; width: 0">&nbsp;</div>
</div>

<div style="margin-bottom: 32px; margin-left: 32px; margin-top: 16px;">
  ${histogram}
</div>

<h2 style="margin-bottom: 12px;">Issues that cause the most untestable classes</h2>

<#list worstOffenders as classIssues>
  <div class="classExplanation">
    <#assign numConstructionIssues = classIssues.constructionIssues?keys?size />
    <#assign numCollaboratorIssues = classIssues.collaboratorIssues?keys?size />
    <#assign numDirectCostIssues = classIssues.directCostIssues?keys?size />

    <div class="cost">Cost: ${classIssues.totalCost}</div>
    <p class="header">${message("report.explain.class.hardToTest", "<tt>", classIssues.className, "</tt>")} </p>

    <#if numConstructionIssues != 0>
      <p class="issueType header">${message("report.explain.class.construction")}</p>
      <@costDetailBox classIssues.constructionIssues "construction"/>
    </#if>

    <#if numCollaboratorIssues != 0>
      <p class="issueType header">${message("report.explain.class.collaborator")}</p>
      <@costDetailBox classIssues.collaboratorIssues "collaborator" />
    </#if>

    <#if numDirectCostIssues != 0>
      <p class="issueType header">${message("report.explain.class.directCost")}</p>
      <@costDetailBox classIssues.directCostIssues "directCost" />
    </#if>

    <!--input type="button" value="Show more suggestions"/><br/-->
    <!--p>${message("report.explain.class.benefits", "<b>", 0.00, "</b>")}</p-->
  </div>
</#list>
<div class="copyright">
  <a href="http://testabilityexplorer.org">http://testabilityexplorer.org</a></div>
</body>
</html>
